/**
*  @file 
*  @ingroup simulator
*  @brief
*  this file contains constants which should 
*    eventually come from config files or GUIs
*
********************************************************/

//! operational center
//#define CENTER_LAT	(37.956919)
//#define CENTER_LON	(-75.697857)

// SAXIS
#define CENTER_LAT	(37.928207)
#define CENTER_LON	(-75.735039)

// GREENBACKVILLE
//#define CENTER_LAT	(38.0034)
//#define CENTER_LON	(-75.3888)


//! dimensions of bloom
//#define BLOOMRAD_LAT (0.00085800)
//#define BLOOMRAD_LON (0.00119000)
#define BLOOMRAD_LAT (0.000430)
#define BLOOMRAD_LON (0.000700)

//! box size for random bloom locations
#define BLOOMBOXSIZE_LAT (0.00844)
#define BLOOMBOXSIZE_LON (0.017248)




/********************************************************
*
* following for simulate_boat.c
*
********************************************************/


// for mapping demo
#define BOATCENTER_LON_OFFSET (BLOOMRAD_LON*6)
#define BOATCENTER_LAT_OFFSET (BLOOMRAD_LAT*8)

#define CLOSEENOUGH	(15)



//! defines the boat star positions for three-boat search off of Saxis
#define BOATPOSITION_MAPDEMO




/********************************************************
*
* following for simulator.c
*
********************************************************/

//! offset to keep these robot numbers different from ASF
#define ROBNUMOFFSET	(3)
// number of first simbuoy
#define SIMBUOYOFFSET (9)
//! number of simbuoys
#define SIMBUOYCOUNT (0)




/********************************************************
*
* following for simulate_fluorometer.cpp
*
********************************************************/

// if randomblooms is defined, blooms will be randomly 
// located within the bloom box
// if not, blooms will by located
// in fixed positions symmetric around the center of 
// the bloom box
//
//#define RANDOMBLOOMS

// if bloomsize_random is defined, blooms will be a 
// random size between the radius given above and 1/4 of 
// that radius 
//
// if not, they will use the radius above
//
//#define BLOOMSIZE_RANDOM

//! if bloom_gaussian is defined then the bloom will
//!   have its concentration in a gaussian distribution
//!   with a cutoff at the lower end (FLUOR_FLOOR)
//!
//! if undefined, then the values will be 1 inside the 
//!   bloom and 0 outside
#define BLOOM_GAUSSIAN


// number of blooms of each type 
#define NUMROUNDBLOOMS	(3)
#define NUMSTRIPEBLOOMS	(0)
#define NUMBLOOMS (NUMROUNDBLOOMS + NUMSTRIPEBLOOMS)

// center of bloom box
#define BLOOMCENTER_LAT	(CENTER_LAT)
#define BLOOMCENTER_LON	(CENTER_LON)

// offsets for fixed bloom locations
#define BLOOMCENTER_LON_OFFSET (BLOOMRAD_LON*5)
#define BLOOMCENTER_LAT_OFFSET (0.0)


// parameters for fluorometer gaussian
#define CORR_LAT_LON (0) //values are between -1 and 1
#define BLOOMSTD_LAT (BLOOMRAD_LAT) //one standard deviation in latitude direction
#define BLOOMSTD_LON (BLOOMRAD_LON) //one standard deviation in longitude direction
#define FLUOR_FLOOR (0.01) //dValue under this is thresholded to 0

// parameters for fluorometer stripes
#define STRIPESEPARATIONMETERS	(40.0)
#define STRIPEWIDTHMETERS	(10.0)


//#define SIMBOXWEST (-75.8)
//#define SIMBOXEAST (-75.6)
//#define SIMBOXNORTH (38.0)
//#define SIMBOXSOUTH (37.7)

//#define MAXCELLS	(1e8)
//#define CELLSIZE	(5)
